@@ -64,6 +64,13 @@ public class Preferences {
|
||
| 64 | 64 |
return mPrefs.getString("mac",NullStr);
|
| 65 | 65 |
} |
| 66 | 66 |
|
| 67 |
+ public boolean isPrinterConnected(){
|
|
| 68 |
+ return mPrefs.getBoolean("isPrinterConnected",false);
|
|
| 69 |
+ } |
|
| 70 |
+ |
|
| 71 |
+ public void setPrinterConnected(boolean isPrinterConnect){
|
|
| 72 |
+ mPrefs.edit().putBoolean("isPrinterConnected",isPrinterConnect).commit();
|
|
| 73 |
+ } |
|
| 67 | 74 |
public String getCurrentSession(){
|
| 68 | 75 |
return mPrefs.getString("currentSession", NullStr);
|
| 69 | 76 |
} |
@@ -80,7 +80,11 @@ public class BluetoothDeviceListAdapter extends BaseAdapter {
|
||
| 80 | 80 |
holder.deviceName.setText(device.getName()); |
| 81 | 81 |
holder.deviceMac.setText(device.getAddress()); |
| 82 | 82 |
if(device.getAddress().equals(Preferences.getInstance().getPrinterMac())){
|
| 83 |
- holder.deviceStatus.setText(R.string.click_to_connect); |
|
| 83 |
+ if(Preferences.getInstance().isPrinterConnected()){
|
|
| 84 |
+ holder.deviceStatus.setText(R.string.bt_connected); |
|
| 85 |
+ }else{
|
|
| 86 |
+ holder.deviceStatus.setText(R.string.click_to_connect); |
|
| 87 |
+ } |
|
| 84 | 88 |
}else{
|
| 85 | 89 |
holder.deviceStatus.setText("");
|
| 86 | 90 |
} |
@@ -23,6 +23,7 @@ import org.apache.commons.lang.ArrayUtils; |
||
| 23 | 23 |
import java.util.Vector; |
| 24 | 24 |
|
| 25 | 25 |
import ai.pai.lensman.R; |
| 26 |
+import ai.pai.lensman.db.Preferences; |
|
| 26 | 27 |
|
| 27 | 28 |
|
| 28 | 29 |
public class PrinterService extends Service {
|
@@ -90,7 +91,9 @@ public class PrinterService extends Service {
|
||
| 90 | 91 |
int status = mGpService.queryPrinterStatus(0, 10000); |
| 91 | 92 |
if (status == GpCom.STATE_NO_ERR) {
|
| 92 | 93 |
str = "打印机正常"; |
| 94 |
+ Preferences.getInstance().setPrinterConnected(true); |
|
| 93 | 95 |
} else {
|
| 96 |
+ Preferences.getInstance().setPrinterConnected(false); |
|
| 94 | 97 |
str = "打印机 "; |
| 95 | 98 |
if ((byte) (status & GpCom.STATE_OFFLINE) > 0) {
|
| 96 | 99 |
str += "脱机"; |
@@ -106,6 +106,7 @@ public class PrinterSettingActivity extends BaseActivity implements PrinterSetti |
||
| 106 | 106 |
@Override |
| 107 | 107 |
public void onPrinterStatusFetched(String msg) {
|
| 108 | 108 |
printerStatusText.setText(msg); |
| 109 |
+ deviceAdapter.notifyDataSetChanged(); |
|
| 109 | 110 |
} |
| 110 | 111 |
|
| 111 | 112 |
|
@@ -85,7 +85,6 @@ public class PrinterSettingPresenter implements PrinterSettingContract.Presenter |
||
| 85 | 85 |
view.showToast(context.getString(R.string.printer_status_query_fail)); |
| 86 | 86 |
return; |
| 87 | 87 |
} |
| 88 |
- view.onPrinterStatusFetched(context.getString(R.string.query_printer_processing)); |
|
| 89 | 88 |
view.onPrinterStatusFetched(printerService.queryPrinterStatus()); |
| 90 | 89 |
} |
| 91 | 90 |
|
@@ -149,8 +148,10 @@ public class PrinterSettingPresenter implements PrinterSettingContract.Presenter |
||
| 149 | 148 |
int code = printerService.connectPrinter(device); |
| 150 | 149 |
if(code==0){
|
| 151 | 150 |
Preferences.getInstance().setPrinterMac(device.getAddress()); |
| 151 |
+ Preferences.getInstance().setPrinterConnected(true); |
|
| 152 | 152 |
}else{
|
| 153 | 153 |
view.showToast(context.getString(R.string.printer_port_open_fail)); |
| 154 |
+ Preferences.getInstance().setPrinterConnected(false); |
|
| 154 | 155 |
} |
| 155 | 156 |
|
| 156 | 157 |
} |